#include "interface.h"
#include "conf/config.h"
Config &config = Config::getInstance();

StorageEngine &StorageSystem::getEngine()
{
    // 1. 获取 Config 单例
    static Config &config = Config::getInstance();

    // 2. 定义 engine 为函数内的静态变量
    // 它只会在第一次调用 getEngine() 时被初始化一次
    static StorageEngine engine(config.GetValue<std::string>("data_file", "data.db"));

    // 3. 返回这个 engine 的引用
    return engine;
}

page_id_t StorageSystem::current_page_id = 1;
std::unordered_map<page_id_t, std::vector<uint8_t>> StorageSystem::pages = std::unordered_map<page_id_t, std::vector<uint8_t>>();